/*
 Mutex.h - Encapsulation of a mutex
 License: BSD
 */
#pragma once
#ifndef MUTEX_H_INCLUDED
#define MUTEX_H_INCLUDED

#ifdef WIN32
#define WIN32_LEAN_AND_MEAN
#include <Windows.h>
#endif

class Mutex
{
    CRITICAL_SECTION m_cs;
public:
    Mutex();
    ~Mutex();
    void lock();
    void unlock();
    void try_lock();
};

#endif // MUTEX_H_INCLUDED